#pragma once


class LookFeelProperty
{
public:
	LookFeelProperty();
	~LookFeelProperty();

	void Layout();
	MGUI_Layout * GetLayout() { return mLayout; }

protected:
	void OnEditLookFeelChanged_(MGUI_LookFeel * _lookfeel);
	void OnEditRectChanged_(MGUI_Rect _rect);

	void OnSkinChanged_(MGUI_Widget * _widget);
	void OnStateChanged_(int _index);

	void OnNameReturn_(MGUI_Widget * _widget);
	void OnClientReturn_(MGUI_Widget * _widget);
	void OnUVRectReturn_(MGUI_Widget * _widget);

protected:
	MGUI_Layout * mLayout;

	MGUI_EditBox * mEditBox_Name;
	MGUI_EditBox * mEditBox_Skin;
	MGUI_EditBox * mEditBox_Client;
	MGUI_ComboBox * mComboBox_State;
	MGUI_EditBox * mEditBox_UVRect;
	MGUI_Widget * mWidget_TextColor;

	tListener1<LookFeelProperty, MGUI_LookFeel *> OnEditLookFeelChanged;
	tListener1<LookFeelProperty, MGUI_Rect> OnEditRectChanged;

	tListener1<LookFeelProperty, MGUI_Widget *> OnSkinChanged;
	tListener1<LookFeelProperty, int> OnStateChanged;

	tListener1<LookFeelProperty, MGUI_Widget *> OnNameReturn;
	tListener1<LookFeelProperty, MGUI_Widget *> OnClientReturn;
	tListener1<LookFeelProperty, MGUI_Widget *> OnUVRectReturn;
};

